1. Field of the Invention
The present invention relates generally to a collaborative document management system for classifying shared collections of documents, and more particularly, to a method and apparatus for providing customizable categorizations of the shared collection of documents that are mutually intelligible.
2. Description of Related Art
Much of the project-based work that exists today requires extensive collaboration by different groups of individuals. Such collaboration involves activities that include the continual adaptation, appropriation and reconfiguration of technologies, artifacts, and environment. In many instances, a set of documents is used to tie a collaborative activity (e.g., a construction project) together across different groups of individuals that form one or more organizations. For example, different groups of individuals may work together to develop a set of documents that are sometimes called project files. These project files when stored electronically may be categorized in a project directory so that they can be shared across the groups of individuals. A single categorization of the files in project directory may not satisfy the work practice of each group (or individual) because different groups may have different focuses. In addition, the categorization of a project directory tends to evolve over time because different groups may contribute to the collection of documents at different points in time.
In addition, directory structures are also used to categorize a large heterogeneous corpus of shared documents stored in an electronic database. Large corpuses of documents are often difficult to search because of the sheer size of the corpus. A directory structure of a corpus of documents is a shared resource that is used to communicate information about the documents. That is, directory structures provide a categorization schema for searching for a document in a corpus. Consequently, the directory structure often becomes a crucial if not the single means for locating documents in the corpus. In addition, the manner in which documents are categorized in a directory structure is often used to communicate information about the content of the documents. Thus, the inability to properly define a directory structure becomes tantamount to the loss of data or information about shared collection of documents.
It is desirable to allow the customization of the directory structure of a shared collection of documents so that the directory structure can more effectively represent the aspects of a group""s or an individual""s particular role in a project. By customizing a project directory structure, a particular group or individual is better able to categorize documents to better suit their immediate needs and evolving work practices. Advantageously, customization tends to increase the efficiency of a group""s or an individual""s use of the files in a project directory. One drawback of customization, however, is that it may have the effect of rearranging the structure of the project directory in such a way that a customized directory structure becomes either structurally or semantically incompatible with the project directory structure or other customized directory structures. Directory structures become xe2x80x9cstructurally incompatiblexe2x80x9d when a user introduces a change that eliminates any one-to-one relationship between directory structures. In contrast, directory structures become xe2x80x9csemantically incompatiblexe2x80x9d when a user introduces a change that affects the semantic mapping between directory structures without affecting the structural mapping.
Current collaborative document management systems, which share document content, pre-suppose a single, fixed filing structure for categorizing information. A relational database is an example of a collaborative document management system that provides different views of a shared repository of information. Each view in a relational database, however, is not a customized view of information but is instead a subset of a large predefined set of fixed categories. It is therefore desirable to provide a document management system in which different individuals (or groups) can share customizations to a core directory structure (e.g., project directory structure). That is, it would be desirable to provide a system that can xe2x80x9ctranslatexe2x80x9d between different levels of customization by interpreting documents according to both the directory structure under which they are filed and the directory structure under which they are retrieved.
In accordance with the invention, there is provided a method and apparatus therefor, for sharing customizations to a filing system in which documents stored in memory (e.g., a shared repository) are categorized and accessed by multiple users through an application program interface. To begin, the application program interface receives input for defining a core filing structure having hierarchically organized filing categories. The core filing structure provides a first mapping for categorizing documents stored in the memory. In addition, the application program interface receives input for defining a first customized filing structure having hierarchically organized filing categories. The first customized filing structure is defined by a first sequence of modifications to the core filing structure to provide a second mapping for categorizing documents stored in the memory. Also, the application program interface receives input for categorizing documents stored in the memory according to one of the core filing structure and the first customized filing structure. In operation, the application program interface receives input requesting that a first document stored in the memory and categorized according to one of the core filing structure and the first customized filing structure be viewed according the other of the core filing structure and the first customized filing structure. The apparatus translates between the core filing structure and the first customized filing structure with the first sequence of modifications. The translation categorizes the first document stored in the memory even though the first mapping defined by the core filing structure is incommensurate with the second mapping defined by the first customized filing structure.
In accordance with another aspect of the invention, there is provided a method and apparatus therefor, for receiving at the application program interface input for defining a second customized filing structure having hierarchically organized filing categories. The second customized filing structure is defined by a second sequence of modifications to the core filing structure to provide a third mapping for categorizing documents stored in the memory. The application program interface receives input for categorizing documents stored in the memory according to one of the first customized filing structure and the second customized filing structure. Also, the application program interface receives input requesting that a second document stored in the memory and categorized according to one of the first customized filing structure and the second customized filing structure be organized according the other of the first customized filing structure and the second customized filing structure. The apparatus translates between the first customized filing structure and the second customized filing structure with the first sequence of modifications and the second sequence of modifications. The translation categorizes the second document stored in the memory even though the second mapping defined by the first customized filing structure is incommensurate with the third mapping defined by the second customized filing structure.